#!/bin/bash

# 定义代理地址和端口，根据实际情况修改
PROXY_SERVER="127.0.0.1"
PROXY_PORT="10808"

# 定义代理协议，根据实际情况修改，常见的有 http、socks5 等
PROXY_PROTOCOL="http"

# 定义代理的完整地址
PROXY="$PROXY_PROTOCOL://$PROXY_SERVER:$PROXY_PORT"

# 检查输入参数
if [ $# -ne 1 ]; then
    echo "用法: $0 [start|stop|status]"
    exit 1
fi

case "$1" in
    start)
        # 设置 http 和 https 代理
        git config --global http.proxy $PROXY
        git config --global https.proxy $PROXY
        echo "Git 代理已启动，代理地址为: $PROXY"
        ;;
    stop)
        # 移除 http 和 https 代理
        git config --global --unset http.proxy
        git config --global --unset https.proxy
        echo "Git 代理已停止"
        ;;
    status)
        # 获取当前的 http 和 https 代理设置
        HTTP_PROXY=$(git config --global http.proxy)
        HTTPS_PROXY=$(git config --global https.proxy)

        if [ -z "$HTTP_PROXY" ] && [ -z "$HTTPS_PROXY" ]; then
            echo "Git 代理未启用"
        else
            echo "Git 代理已启用，代理地址为:"
            echo "http.proxy: $HTTP_PROXY"
            echo "https.proxy: $HTTPS_PROXY"
        fi
        ;;
    *)
        echo "无效的参数。用法: $0 [start|stop|status]"
        exit 1
        ;;
esac
